package com.itfenghuang.day01.day02;

public class A04_运算符 {

    public static void main(String[] args) {

        // 1. 运算符
        /*
            算术运算符
            赋值运算符
            比较运算符
            逻辑运算符
            ++ -- 运算符
            三元运算符
            位远运算符
         */
//      1.1 算术运算符 +  -  *  /  %
//        System.out.println(5*6);

//      1.2 赋值运算符 +=  -=  =  *=  /=  %=
        int num1=5;
        int num2=3;
        num2 +=2;//num2=num2 + 2
        num1 %=2; //num1 = num1 % 2
        System.out.println(num1);
        System.out.println(num2);

//      1.3 比较运算符  >  <  >=  <=  !=  ==
        System.out.println(num1>num2);

//      1.4 逻辑运算符 &&  ||  !
        System.out.println(3>2 && 2!=1);
        System.out.println(3>2 || 2!=1);
        System.out.println(!(3>2 && 2!=1));

//      1.5 ++  -- 运算符
//        ++在前  先自加 后 赋值
//        ++在后  先赋值 后 自加
        int num = 5;
        num++;
        System.out.println(num++);

//      1.6 三元运算符  条件成立22赋值给aa  否则赋值33给aa
        int aa = 5>3? 22:33;
        System.out.println(aa);

//      1.7 位运算符
//        按照二进制的位 进行运算 &  |  〜  << >>  ^
//        与运算: &
//        或运算: |
//        左位移: <<
//        右位移: >>
        System.out.println(12 & 10);
        System.out.println(12 | 10);
        System.out.println(12 << 10);
        System.out.println(12 >> 10);
        System.out.println(12 ^ 10);

    }
}
